import axios from 'axios'

const instance = axios.create({
  baseURL: 'http://kumanxuan1.f3322.net:8001',
  timeout: 5000,
})

/* 两种拦截器的区别：
      封装axios的拦截器 拦截的是请求 一般用在 需要在请求头添加请求信息（例如请求头）
      路由拦截  拦截的是页面  可以决定用户有没有权利访问某个页面

*/
//拦截器
instance.interceptors.request.use(
  (config) => {
    // 什么时候执行这个函数  发送请求之前
    // 判断用户有没有登录  如果没有登录
    // console.log('config:', config)
    let token = localStorage.getItem('token')
    if (token) {
      // 添加请求头 config.headers.请求头 （带横杠就写成键值对）
      // 携带登录凭证发起请求
      config.headers['X-Nideshop-Token'] = token
    }
    return config
  },
  (err) => {
    // console.log(err)
    return Promise.reject(err)
  }
)

instance.interceptors.response.use(
  (res) => {
    // console.log(res)
    return res.data
  },
  (err) => {
    // console.log(err)
    return Promise.reject(err)
  }
)

export default instance
